package JDBC;

import java.sql.*;

/*
 *
 * JDBC
 * java语言 操作数据库
 * jdbc定义了一套操作关系型数据库的规则  接口
 * 步骤：
 * 1：导入驱动的jar包
 * 2：注册驱动
 * 3：获得数据库的连接对象
 * 4：定义sql   指写一个数据库语句
 * 5：获取执行sql语句的对象  Statement
 * 6：执行sql   接受返回结果
 * 7：处理结果
 * 8：释放资源
 *"jdbc:mysql://localhost:3306//mydb"
 * jdbc:mysql 指jdbc的链接方式
 * localhost 127.0.0.1  可以是域名  可以是ip地址  数据库所在服务器
 * 3306 端口号
 *
 *
 *
 * */
public class jdbcDemo05{
    public static void main(String[] args){
        PreparedStatement pst=null;
        Connection connection=null;
//注册驱动
        try {
            Class.forName("com.mysql.jdbc.Driver");
//        3：获得数据库的连接对象

            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "123");

            String sql = "select * from account ";


            //  Statement PreparedStatement
            /*
            *参数使用？作为占位符
            * */


            pst = connection.prepareStatement(sql);
           /*给 ？ 赋值 */
//    pst.setString(1,"户家豪");
//pst.setFloat(2,20000);
            //处理结果
            ResultSet rs= pst.executeQuery(sql);
            /*
            * resultSet 是结果集对象 将数据库里面的记录封装成对象
            * */
            if(rs.next()){
                System.out.println(rs);
                int id = rs.getInt("id");
                String name= rs.getString("name");
              float money= rs.getFloat("money");
                System.out.println(id+"-"+name+"-"+money);
                System.out.println("链接数据库成功");
            }else{
                System.out.println("连接数据库失败");
            }



        }catch(Exception e){
            e.printStackTrace();

        }finally{
            try {
                if(pst!=null){
                    pst.close();
                }
                if(connection!=null) {
                    connection.close();
                }
            }

            catch(Exception e){
                e.printStackTrace();
            }
        }




    }
}
